//
//  ShuaXinTableViewController.m
//  10-10
//
//  Created by 钟纪旺 on 16/10/24.
//  Copyright © 2016年 zjw. All rights reserved.
//

#import "ShuaXinTableViewController.h"

@interface ShuaXinTableViewController ()

@end

@implementation ShuaXinTableViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // 初始化变量和时间
    self.Logs = [[NSMutableArray alloc] init];
    NSDate *date = [[NSDate alloc] init];
    [self.Logs addObject:date];
    
    // 初始化UIRefreshControl
    // rc为该控件的一个指针，只能用于表视图界面
    // 关于布局问题可以不用考虑，关于UITableViewController会将其自动放置于表视图中
        
    UIRefreshControl *rc = [[UIRefreshControl alloc] init];
    rc.attributedTitle = [[NSAttributedString alloc]initWithString:@"下拉刷新"];
    // 一定要注意selector里面的拼写检查
    [rc addTarget:self action:@selector(refreshTableView) forControlEvents:UIControlEventValueChanged];
    self.refreshControl = rc;
   
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
- (void) refreshTableView
{
    if (self.refreshControl.refreshing) {// 判断是否处于刷新状态
        self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString: @"加载中..."];
        // 添加新的模拟器
        NSDate *date = [[NSDate alloc] init];
        // 模拟请求完成以后，回调方法callBackMethod
        [self performSelector:@selector(callBackMethod:) withObject:date afterDelay: 3];
    }
    
}

- (void) callBackMethod:(id) obj
{
    [self.refreshControl endRefreshing];	// 停止下拉刷新控件，回到初始状态
    self.refreshControl.attributedTitle =[[NSAttributedString alloc]initWithString:@"下拉刷新"];   // 文本变回来
    [self.Logs addObject:(NSDate *)obj];
    
    [self.tableView reloadData];
}
- (NSInteger) numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}

- (NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [self.Logs count];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    // 这可以说是Cell部分最重要的代码段了
    // 定义Cell，然后判断cellIdentifier是否重用
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier: CellIdentifier];
    }
    
    // 然后获取时间
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc]init];
    [dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    
    // 然后更新cell
    cell.textLabel.text = [dateFormat stringFromDate:[self.Logs objectAtIndex:[indexPath row]]];
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    
    return cell;
}
@end
